package com.wysiwyg.admin.model.po;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import com.baomidou.mybatisplus.annotation.TableName;

import java.time.LocalDateTime;

/**
 * 用户账户变更记录表
 *
 * @author wwcc
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName("wysiwyg_admin_user_change")
public class AdminUserChangePO {

    /**
     * 主键ID
     */
    private Long id;

    /**
     * 关联的流程ID
     */
    private Long flowId;

    /**
     * 变更类型（1-职位调整、2-工作地点、3-联系方式、4-综合）
     */
    private Integer changeType;

    /**
     * 流程状态（0-待业务处理、1-业务处理中、2-已完成、3-已拒绝）
     */
    private Integer flowStatus;

    /**
     * 是否删除（0-否、1-是）
     */
    private Integer isDelete;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    private LocalDateTime updateTime;

    /**
     * 执行时间（实际更新用户表的时间）
     */
    private LocalDateTime executeTime;

    /**
     * 变更单号
     */
    private String changeNo;

    /**
     * 用户ID
     */
    private String userId;

    /**
     * 用户姓名
     */
    private String userName;

    /**
     * 变更前工作地点
     */
    private String oldWorkplace;

    /**
     * 变更后工作地点
     */
    private String newWorkplace;

    /**
     * 变更前职位
     */
    private String oldJob;

    /**
     * 变更后职位
     */
    private String newJob;

    /**
     * 变更前座机
     */
    private String oldTelephoneNumber;

    /**
     * 变更后座机
     */
    private String newTelephoneNumber;

    /**
     * 变更前邮箱
     */
    private String oldMail;

    /**
     * 变更后邮箱
     */
    private String newMail;

    /**
     * 变更原因
     */
    private String changeReason;

    /**
     * 执行结果
     */
    private String executeResult;

    /**
     * 创建者
     */
    private String createBy;

    /**
     * 修改者
     */
    private String updateBy;
}
